package com.data.modules.online.cgform.service;

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
import java.util.Map;

import com.data.modules.online.cgform.entity.OnlCgformField;
import com.data.modules.online.cgform.entity.OnlCgformHead;
import com.data.modules.online.cgform.model.TreeModel;
import com.data.modules.online.cgform.constant.LinkDown;
import org.apache.ibatis.annotations.Param;

public interface IOnlCgformFieldService extends IService<OnlCgformField> {
    void deleteAutoList(String str, String str2, String str3);

    void deleteAutoListById(String str, String str2);

    void deleteAutoListMainAndSub(OnlCgformHead onlCgformHead, String str);

    void editFormData(String str, String str2, JSONObject jSONObject, boolean z);

    void editTreeFormData(String str, String str2, JSONObject jSONObject, String str3, String str4);

    void executeInsertSQL(Map<String, Object> map);

    void executeUpdatetSQL(Map<String, Object> map);

    List<Map<String, String>> getAutoListQueryInfo(String str);

    Map<String, Object> queryAutoTreeNoPage(String str, String str2, Map<String, Object> map, List<String> list, String str3);

    Map<String, Object> queryAutolistPage(OnlCgformHead onlCgformHead, Map<String, Object> map, List<String> list);

    List<OnlCgformField> queryAvailableFields(String str, String str2, String str3, boolean z);

    List<OnlCgformField> queryAvailableFields(String str, String str2, boolean z, List<OnlCgformField> list, List<String> list2);

    List<OnlCgformField> queryAvailableFields(String str, boolean z, List<OnlCgformField> list, List<String> list2);

    List<TreeModel> queryDataListByLinkDown(LinkDown aVar);

    List<String> queryDisabledFields(String str);

    List<String> queryDisabledFields(String str, String str2);

    String queryForeignKey(String str, String str2);

    Map<String, Object> queryFormData(String str, String str2, String str3);

    Map<String, Object> queryFormData(List<OnlCgformField> list, String str, String str2);

    OnlCgformField queryFormFieldByTableNameAndField(String str, String str2);

    List<OnlCgformField> queryFormFields(String str, boolean z);

    List<OnlCgformField> queryFormFieldsByTableName(String str);

    List<Map<String, Object>> queryListBySql(String str);

    List<Map<String, Object>> querySubFormData(List<OnlCgformField> list, String str, String str2, String str3);

    String queryTreeChildIds(OnlCgformHead onlCgformHead, String str);

    String queryTreePids(OnlCgformHead onlCgformHead, String str);

    void saveFormData(String str, String str2, JSONObject jSONObject, boolean z);

    void saveFormData(List<OnlCgformField> list, String str, JSONObject jSONObject);

    void saveTreeFormData(String str, String str2, JSONObject jSONObject, String str3, String str4);

    List<String> selectOnlineHideColumns(String str);

    IPage<Map<String, Object>> selectPageBySql(Page<Map<String, Object>> page, @Param("sqlStr") String str);

    IPage<Map<String, Object>> selectPageBySql(String str, int i, int i2);

    void updateTreeNodeNoChild(String str, String str2, String str3);
}
